home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 26 / Cream of the Crop 26.iso / os2 / pvm34b3.zip / pvm34b3 / pvm3 / pvmgs / OS2 / Makefile.os2 < prev   
Makefile  |  1997-08-08  |  3KB  |  125 lines

  1. #
  2. # $Id: Makefile.aimk,v 1.8 1997/06/27 13:45:27 pvmsrc Exp $
  3. #
  4. # Generic Makefile body to be concatenated to config header.
  5. #
  6. # Imports:
  7. #  PVM_ARCH   = the official pvm-name of your processor
  8. #  ARCHCFLAGS = special cc flags
  9. #  ARCHLIB    = special libs needed for daemon
  10. #  HASRANLIB  = 't' or 'f'
  11. #
  12. # Define:
  13. #  NOSTRCASE       if libc doesn't have strcasecmp, strncasecmp
  14. #  SYSVSIGNAL      for system5 signal handling
  15. #  SYSVSTR         for strchr() instead of index()
  16. #
  17. SHELL        =    /bin/ksh
  18. PVMDIR        =    ../..
  19. SDIR        =    $(PVMDIR)/pvmgs
  20. DOBJ        =    pvmgs_core.o pvmgs_func.o
  21. LOBJ        =    pvmgsu_core.o pvmgsu_aux.o pvmgs_func.o
  22. PVMIDIR        =    $(PVMDIR)/include
  23. PVMSDIR        =    $(PVMDIR)/src
  24. PVMBDIR        =    $(PVMDIR)/bin
  25. PVMXDIR        =    $(PVMBDIR)/$(PVM_ARCH)
  26. PVMLDIR        =    $(PVMDIR)/lib/$(PVM_ARCH)
  27. PVMLIB        =    pvm3
  28. PVMLIBDEP    =    $(PVMLDIR)/$(PVMLIB).a
  29. CFLAGS        =    $(CFLOPTS) -I$(PVMIDIR) -I$(PVMSDIR) -DIMA_$(PVM_ARCH) \
  30.                 $(ARCHCFLAGS)
  31. LIBS        =    $(LOPT) -L$(PVMLDIR) -l$(PVMLIB) $(ARCHLIB)
  32.  
  33. DIRS        =    $(PVMXDIR) $(PVMLDIR)
  34.  
  35. PROGS        =    $(PVMXDIR)/pvm_gstat$(EXESFX) $(PVMXDIR)/pvmgs$(EXESFX) \
  36.                 $(PVMXDIR)/pvmgroups$(EXESFX)
  37.  
  38. install:    all
  39.  
  40. install-mpp:    all-mpp
  41.  
  42. all:    $(DIRS) $(PROGS) $(PVMLDIR)/gpvm3.a $(PVMLDIR)/pvmgs$(EXESFX)
  43.  
  44. all-mpp:    $(DIRS) $(PROGS) $(PVMLDIR)/libgpvm3.a-mpp $(PVMLDIR)/pvmgs
  45.  
  46. $(PVMXDIR):
  47.     - mkdir $(PVMBDIR)
  48.     - mkdir $(PVMXDIR)
  49.  
  50. $(PVMLDIR):
  51.     - mkdir $(PVMLDIR)
  52.  
  53. $(PVMXDIR)/pvm_gstat$(EXESFX):  pvm_gstat$(EXESFX)
  54.     cp pvm_gstat$(EXESFX) $(PVMXDIR)
  55.  
  56. $(PVMXDIR)/pvmgs$(EXESFX):  pvmgs$(EXESFX)
  57.     cp pvmgs$(EXESFX) $(PVMXDIR)
  58.  
  59. $(PVMXDIR)/pvmgroups$(EXESFX):  pvmgroups$(EXESFX)
  60.     cp pvmgroups$(EXESFX) $(PVMXDIR)
  61.  
  62. $(PVMLDIR)/gpvm3.a:  gpvm3.a
  63.     cp gpvm3.a $(PVMLDIR)
  64.     case x$(HASRANLIB) in xt ) echo ranlib; ranlib $(PVMLDIR)/gpvm3.a ;; esac
  65.  
  66. $(PVMLDIR)/libgpvm3.a-mpp:  libgpvm3.a-mpp
  67.     cp libgpvm3.a $(PVMLDIR)
  68.     case x$(HASRANLIB) in xt ) echo ranlib; ranlib $(PVMLDIR)/libgpvm3.a ;; esac
  69.     touch $(PVMLDIR)/libgpvm3.a-mpp
  70.  
  71. $(PVMLDIR)/pvmgs$(EXESFX):  pvmgs$(EXESFX)
  72.     cp pvmgs$(EXESFX) $(PVMLDIR)
  73.  
  74. pvmgroups$(EXESFX):    pvmgroups.o gpvm3.a $(PVMLIBDEP)
  75.     $(CC) $(CFLAGS) -o pvmgroups$(EXESFX) pvmgroups.o gpvm3.a $(LIBS) 
  76.  
  77. pvmgs$(EXESFX):    $(DOBJ) $(PVMLIBDEP)
  78.     $(CC) $(CFLAGS) -o pvmgs$(EXESFX) $(DOBJ) $(LIBS)
  79.  
  80. gpvm3.a:    $(LOBJ)
  81.     rm -f gpvm3.a
  82.     $(AR) cr gpvm3.a $(LOBJ)
  83.     case x$(HASRANLIB) in xt ) echo ranlib; ranlib gpvm3.a ;; esac
  84.  
  85. libgpvm3.a-mpp:    $(LOBJ)
  86.     rm -f libgpvm3.a
  87.     $(AR_FRONT) cr libgpvm3.a $(LOBJ)
  88.     case x$(HASRANLIB) in xt ) echo ranlib; ranlib libgpvm3.a ;; esac
  89.     touch libgpvm3.a-mpp
  90.  
  91. pvm_gstat$(EXESFX): pvm_gstat.o gpvm3.a $(PVMLIBDEP)
  92.     $(CC) $(CFLAGS) -o pvm_gstat$(EXESFX) pvm_gstat.o gpvm3.a $(LIBS)
  93.  
  94. clean:
  95.     rm -f $(DOBJ) $(LOBJ) pvmgs$(EXESFX) gpvm3.a \
  96.         pvm_gstat.o pvmgroups.o pvm_gstat$(EXESFX) pvmgroups$(EXESFX)
  97.  
  98. tidy:
  99.     rm -f $(DOBJ) $(LOBJ)
  100.  
  101. lint:
  102.     lint -DARCHCLASS=\"$(PVM_ARCH)\" pvmgs.c > Ld
  103.     lint -DARCHCLASS=\"$(PVM_ARCH)\" pvm_gsulib.c > Ll
  104.  
  105. #
  106. pvmgsu_core.o:    $(SDIR)/pvmgsu_core.c
  107.     $(CC) $(CFLAGS) -c $(SDIR)/pvmgsu_core.c
  108. pvmgsu_aux.o:    $(SDIR)/pvmgsu_aux.c
  109.     $(CC) $(CFLAGS) -c $(SDIR)/pvmgsu_aux.c
  110. pvmgroups.o:    $(SDIR)/pvmgroups.c
  111.     $(CC) $(CFLAGS) -c $(SDIR)/pvmgroups.c
  112. pvm_gstat.o:    $(SDIR)/pvm_gstat.c
  113.     $(CC) $(CFLAGS) -c $(SDIR)/pvm_gstat.c
  114. pvmgs_core.o:    $(SDIR)/pvmgs_core.c
  115.     $(CC) $(CFLAGS) -c $(SDIR)/pvmgs_core.c
  116. pvmgs_func.o:    $(SDIR)/pvmgs_func.c
  117.     $(CC) $(CFLAGS) -c $(SDIR)/pvmgs_func.c
  118.  
  119. #
  120. # Source File Dependencies
  121. #
  122.  
  123. include $(PVMDEPPATH)$(SDIR)/pvmdep
  124.  
  125.